Session Border Controllers (SBCs) are becoming increasingly popular for facilitating devices on either side of the Session Border Controllers so that the devices remain unaware of each others' existence. Specifically, in Session Initiation Protocol (SIP) deployments, inside user-agents (UAs) are configured with the SBC's inside-address as its proxy/registrar address and directs all signaling traffic to the SBC, which in turn ensures that this traffic reaches the actual proxy/registrar (as configured in its database) and vice-versa. SBCs facilitate consolidating the SIP Application Level Gateway (ALG) fixups to be done at a common point of the network, rather than doing the fixups at each intermediate home gateway (gateways front-ending the UAs). Since the ALG fixups are performed at an SBC, non-ALG intermediate home gateways may be used, in other words intermediate home gateways that cannot perform the ALG fixups. Such intermediate home gateways may fix up the L3 and L4 headers without performing ALG fixups.
Non-ALG intermediate home gateways may perform port address translation (PAT) in a non-symmetric fashion. In non-symmetric PAT, if the inside UA or phone sends a packet with, for example, a User Datagram Protocol (UDP) src-port: 1024, then the PAT at the intermediate home gateway will not ensure that 1024 will be preserved post-intermediate home gateway. When this occurs, a packet from outside the intermediate home gateway may be destined for a different port, and the PAT will not let it through to the inside UA or phone. This problem may also occur with symmetric intermediate home-gateways that support more than one UA in the inside-domain, and therefore may not ensure preservation of the same src-port post-PAT.